CENVI FOR OS/2, DOS, AND WINDOWS Version 1.007 Cmm (C minus minus) is 'C' for the rest of us. CEnvi runs Cmm programs in the DOS, Windows, and OS/2 environments (more to follow). Together, CEnvi and Cmm make the power and flexibility of the C programming language part of every computer user's environment without the hardware, time, and programmer resources needed for developing full-blown C programs. With CEnvi and Cmm, anyone can take control of their computer environment. C is not just for programming nerds anymore. CEnvi utilities, macros, batch files, and scripts can quickly be created, shared, and modified among all computer users, professional and amateur alike. CEnvi can be incorporated at a pace that is comfortable to you: you may only want to use CEnvi code set up by a more experienced user, you may want to enhance existing batch files with a line or two of CEnvi code, or you may write complete utilities using CEnvi. The following statement is a single-line CEnvi example that you can include into batch files to return ERRORLEVEL 1 only on Fridays: CEnvi "date = ctime(time()) return( strstr(date,"Fri") ? 1 : 0 )" Nombas provides over a hundred samples such as this one--many single-line and other complete program files--and more samples are added every day to provide solutions to CEnvi user's needs. Sample programs included with the CEnvi shareware demonstrate Cmm programming; looping in batch files; altering environment variables; using environment variables in mathematical equations; user input; reading time; sounds; setting ERRORLEVEL; file read/write; OS/2 WPS and PM calls; controlling OS/2, PM, and Windows tasks; interacting with DOS, OS/2, and Windows operating systems; defining windows and Windows functions; extending PATH; scheduled command execution; setting NUMLOCK; and much more. Even if you don't learn the Cmm programming language, you could still personalize these samples to suit your needs. (Do you need a program to tell if it is a Thursday? I'll bet that you could "reprogram" the above sample Cmm code to return ERRORLEVEL 1 only on Thursdays!) If you choose to learn the Cmm programming language (C programmers will find that they already know it), then step through the Cmm programming tutorial in the CEnvi Registered User's Manual. This tutorial takes you step by step through the planning, creation, and debugging of a simple text editor: CmmEdit. CEnvi costs $38 for a license that includes the OS/2, DOS, and Windows versions. Additional site licenses (which do not include the 100+ page manual) are $15 each. The CEnvi Unregistered Shareware package is a working version of CEnvi with occasional registration reminder screens. The most recent versions of CEnvi Unregistered Shareware, including sample files, are always available via anonymous FTP from "world.std.com" in the "pub" directory: cenvi2.zip, cenvid.zip, and cenviw.zip are CEnvi for OS/2, DOS, and Windows, respectively. From CompServe: CEnvi for OS/2 is CENVI2.ZIP in OS2USER library 4, CEnvi for DOS is CENVID.ZIP in IBMSYS library 1, and CEnvi for Windows is CENVIW.ZIP in WINSHARE and WINUSER library 6. Also available for download from the Nombas BBS (suggested dial string ATDT16173916565,,,,,44444). Nombas may be reached at: Nombas Internet: bsn@world.std.com P.O. Box 875 CompuServe: 72212,1622 Medford, MA 02155 USA Phone: (617)391-6595 BBS: (617)391-6595 ext. 44 after 2nd ring (e.g., ATDT16173916595,,,,,44444) ************************* CENVID.ZIP FILE LIST ************************* CENVID.ZIP, the Unregistered Shareware CEnvi package for DOS, contains the following files: *CENVI.EXE: CEnvi shareware executable for DOS, OS/2, or Windows. *CENVI.DOC: CEnvi Shareware Manual, Chapter 1: CEnvi Unregistered Shareware *CMMTUTOR.DOC: CEnvi Shareware Manual, Chapter 2: Cmm Language Tutorial *CMM_VS_C.DOC: CEnvi Shareware Manual, Chapter 3: Cmm versus C, for C Programmers *CENVILIB.DOC: CEnvi Shareware Manual, Chapter 4: Function Library *LICENSE.DOC: CEnvi Unregistered Shareware License Agreement *README.DOC: Introductory file. Read this first for quick intallation. *REGISTER.DOC: CEnvi registration form *INSTALL.CMM: Cmm source file for installing this shareware version *AllDirs.bat: Perform a command in this directory and all sub-directories *AllFiles.bat: Perform a command on all files matching a given file specification *Ascii.bat: Display the ascii character table *BatLoops.bat: Examples of various methods CEnvi can use to allow looping within batch files *BattMem.bat: Show values stored in a PC's battery-protected memory *Border.cmm: Draw a simple border on the screen *CmmEdit.cmm: VERY simple text editor; developed step-by-step in the tutorial chapter of the Registered CEnvi Manual. *DelTree.bat: Delete a directory tree *DirStat.bat: Extract specific fields from a DOS "DIR" listing *DiskFree.bat: Display free space on a disk drive *DosTime.bat: Show time according to computer's internal clock *ErrLev.bat: Execute a command and set the ERRLEV value as the return code, which makes ERRORLEVEL a variable *Fibonacc.cmm: Two methods for generating the Fibonacci sequence *FileFind.bat: Wildcard search for files on current drive or on all drives *Find#.cmm: Extract a number from wordy output; used by DirStat.bat *FranTick.cmm: Animated tick who drank too much coffee *GetUKey.cmm: Display a choice prompt and then set an environment variable based on user's selection *Hello.cmm: My first Cmm program. Used to begin the Cmm tutorial. *HexDump.bat: Display hexadecimal dump of a file *Install.cmm: Install this registered version of CEnvi. *IsDay_1.bat: One method to check if it is a specific day of the week *IsDay_2.bat: Another method to check if it's a specific day of the week *IsItFri.bat: Is it Friday? *KbdBuf.bat: Alter the size of the keyboard buffer *KbdRate.bat: Alter the typematic rate of the keyboard *KeyCode.bat: Display keycode of any key pressed *KeyState.bat: Get or set the state of the NumLock, CapsLock, or Insert keys *KeyStuff.bat: Stuff characters into the keyboard buffer *MemBlock.bat: Trace through DOS's allocated memory blocks *Mouse.bat: Demonstrate reading a mouse's position and state *MultiDir.bat: DOS's "DIR" command allowing multiple file specifications *NumLock.bat: Set the NumLock key on *OneADay.bat: Perform any command(s) no more than once per day *PathAdd.bat: Add a directory to your PATH environment variable. *PathDel.bat: Remove a directory from your PATH environment variable *PathStak.bat: Multi-level save or restore of current drive and directory so that you can change drives and directories and still return to this one *PathSubs.bat: Use DOS's SUBST command to shorten your PATH environment variable so that more paths can be fit with DOS' 127-byte limit *Primes.bat: Demonstrate automatic array allocation for calculating prime numbers *PrmptDay.bat: Change command-line-prompt to display today's date *Quote.bat: Choose a "profound" quote at random *REBOOT_1.BAT: One method to reboot your computer *REBOOT_2.BAT: Another method to reboot your computer *Restrict.cmm: Allow a limited subset of DOS commands *RunTime.bat: Rudimentary scheme for executing a command at a certain time of day. *SortLen.bat: Sort any file based on line length *Sound.bat: Play a frequency for a given time period *Tee.cmm: Save screen output to a file while it is being displayed on the screen *ValidDir.bat: Verify if a directory is valid *Wait.bat: Pause and do not return for specified number of seconds *WinShell.bat: Start windows with a specific shell. Run Windows for a single program.